// file:request.js
// 1、引入axios库
import axios from "axios"

// 2、创建axios实例
const http = axios.create({
    baseURL: '/api',  // api的base_url
    timeout: 500000  // 请求超时时间
})

// 3、请求拦截器
http.interceptors.request.use(
    config => {
        console.log("request url="+config.url)

        // 获取token，如果有token，就放入http的请求头里面
        let token = sessionStorage.getItem("token");
        if(token){
            console.log(config)
            config.headers['Authorization'] = "Bearer " + token;
            //config.headers.token = token;//自定义头信息
        }
        return config
    },
    error => {
        return Promise.reject(error)
    }
)

// 4、响应拦截器
http.interceptors.response.use(
    response => {
        // 定时刷新token
        console.log(response.data)
        
        return response
    },
    error => {
        debugger
       //发生错误时的响应
       let status = error.response.status;
        if(status == 401){//位
            sessionStorage.removeItem("token")
            sessionStorage.removeItem("userId")
            location.href = "/"//去主页
        }
        return Promise.reject(error)
    }
)

export default http
